<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Number数值类型</title>
</head>
<body>
<script>
    var str="hello";
        str="你好";//定义一个变量只写一次
    var str1="基础训练";
    alert(str);
    console.log(str1);
    //JS中所有的数值都是Number类型，包括整数和小数
    var i=123;
    i=456;
    console.log(i);
    var a=123;
    var b="123";
    console.log(a);
    console.log(b);
    //辨别不出来哪个是字符串类型 哪个是数值类型
    //引入一个运算符typeof 判断类型
    //语法：typeof a
    //检出出来是字符串时 返回string 小写
    //检查出来是数值时 返回number  小写
    console.log(typeof a);//输出变量a的数据类型
    console.log(typeof b);//输出变量b的数据类型
    //JS中表示数字的最大值Number.MAX_VALUE 如果使用Number表示的数字超过了最大值，则返回一个无穷大Infinity 正无穷 如果是最小为-Infinity 负无穷
    console.log(Number.MAX_VALUE);//返回一个最大值1.7976931348623157e+308 读e的正308次方
    var c=Number.MAX_VALUE*Number.MAX_VALUE;
    console.log(c);//返回一个Infinity 无穷大 正无穷  Infinity是数值型的
    var d=Infinity;
    console.log(typeof d);//返回值是number说明是数值型的
    //当计算机不会计算时会返回一个NaN，它是一个特殊的数字 表示Not A Number,使用typeof 检查类型也会返回一个number 如下
    var e="abc"*"csd";
    console.log(e);//返回一个值是NaN
    //最小值Number.MIN_VALUE  值为5e-324
    var f=Number.MIN_VALUE;
    console.log(f);//返回一个值5e-324 读e的负324次方
    //JS中整数的计算还算精确 如下
    var g=45555+788999;
    console.log(g);//返回一个值834554
    //JS中小数的计算不精确 如下
    var h=0.1+0.2;
    console.log(h);//返回一个值0.30000000000000004
</script>
</body>
</html>